package com.aceitunaproject.mapdisplay.config;

/**
 * Classes that implement this interface provide all display configuration settings to MapDrawer.
 *
 * @author Federico Bergstein
 */
public interface DisplayConfiguration {

	/**
	 * 
	 * @return the scaling factor to use in MapDrawer implementations
	 */
	int getScalingFactor();

	/**
	 * 
	 * @return the map's tile height
	 */
	int getTileHeight();

	/**
	 * 
	 * @return the map's tile width
	 */
	int getTileWidth();

	/**
	 * returns the path to the folder where the tile and thing images are stored
	 * @return the path to the folder where the tile and thing images are stored
	 */
	String getImageFolder();

	/**
	 * returns the extension (png,gif,jpg,etc) of the image files to use 
	 * @return the extension (png,gif,jpg,etc) of the image files to use
	 */
	String getImageExt();

	/**
	 * 
	 * @return the width of Things
	 */
	int getThingWidth();

	/**
	 * 
	 * @return the height of Things
	 */
	int getThingHeight();

	/**
	 *
	 * @return The height offset to paint a Thing at (in pixels).
	 */
	int getThingOffSet();

}
